#pragma once

#include <stdarg.h>
#include "stdafx.h"
#include "Packet.h"

const int NOCOMMANDSET		= 222;
const int MISSINGPARAMS		= 223;
const int INVALIDPARAM		= 224;

class Command
{
	public:
		Command();
		Command(unsigned int opCode);
		Command(byte* networkBuffer);
		~Command();
		void			SetOpCode(const unsigned int opCode);
		void			AddParams(byte* param , ...);
		byte			GetOpCode();
		byte*			GetParams();
		int				GetNumOfParams();
		unsigned int	GetPacketLength();
		byte*			Generate();
	private:
		Packet _packet;
		int _numOfParams;
};